Solid-state drives (SSDs) generally have faster performance, are more compact, and are less sensitive to vibration or physical shock than conventional magnetic disk drives. Given these advantages, SSDs are being used in more and more computing devices and other consumer products in lieu of or in addition to magnetic disk drives, even though the cost-per-gigabyte storage capacity of SSDs is significantly higher than that of magnetic disk drives.
The performance of SSDs is not attributable only to the speed of reading from and writing to memory cells of SSDs but also the time taken by the SSD controller to process the read and write commands issued by connected host systems. From the perspective of the host system, IO (input-output operation) latency is measured by the time it issues the read or write command to the SSD to the time the SSD responds with read data or a write acknowledgement. If there any delays between those two time periods, including delays attributable to the SSD controller, the host system will experience an increase in latency.
Efforts have been made to decrease IO latencies attributable to the SSD controller design. For example, instead of employing a single port for receiving host commands, many SSD host interface circuits may employ two or more of such ports. Higher speeds may also be achieved with larger size dynamic random access memory (DRAM) that is used in caching reads and writes. However, making the DRAM larger has the drawback of increasing the overall cost of the SSD.